home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Games of Daze
/
Infomagic - Games of Daze (Summer 1995) (Disc 1 of 2).iso
/
x2ftp
/
msdos
/
gamesrc
/
arasan_s
/
piece.cpp
< prev
next >
Wrap
C/C++ Source or Header
|
1994-06-16
|
1KB
|
69 lines
// Copyright 1994 by Jon Dart. All Rights Reserved.
#include "piece.h"
#include "constant.h"
#include <string.h>
#include <ctype.h>
static const unsigned PieceValues[] =
{
0,
64,
192,
212,
320,
576,
2000,
0
};
static const char Images[] = "?PNBRQK?";
Piece::Piece( PieceType type )
{
my_piece = type;
}
const Piece &Piece::EmptyPiece()
{
static Piece p(Piece::Empty);
return p;
}
const Boolean Piece::sliding() const
{
PieceType t = Type();
return t == Rook || t == Bishop || t == Queen;
}
const Piece &Piece::InvalidPiece()
{
static Piece p(Piece::Invalid);
return p;
}
unsigned Piece::Value() const
{
return PieceValues[Type()];
}
unsigned Piece::Value( PieceType type)
{
return PieceValues[type];
}
Piece::PieceType Piece::Value( const char c )
{
const char *p = Images;
p = strchr(p,c);
if (p)
return (PieceType)(p-Images);
else
return Piece::Invalid;
}
char Piece::Image(const Piece::PieceType p)
{
return Images[p];
}